var API_ROOT = 'https://www.yifale.com/api/';
var imgurl = 'https://www.yifale.com'
var header = {
  'Accept': 'application/json',
  'content-type': 'application/x-www-form-urlencoded',
};
var config = {
  isload: true,
  loadtext: '加载中',
  time: 300,
  istoken: false,
};

function getReq(url, data) {


  return new Promise((resolve, reject) => {
    header.token = getApp().globalData.token

    // if (config.istoken) {
    //   if (!header.token) {
    //     wx.showToast({
    //       title: '请先登录',
    //       icon: 'none',
    //       duration: 2000,
    //       success: function() {
    //         // wx.navigateTo({
    //         //   url: '/pages/login/login'
    //         // })
    //       }
    //     })

    //     config.istoken = false;
    //     return false
    //   }
    // }
      
    if (config.isload) {
      wx.showLoading({
        title: config.loadtext,
      })
      config.loadtext = '加载中'
    } else {
      config.isload = true
      config.loadtext = '加载中'

    }
    //网络请求
    wx.request({
      url: API_ROOT + url,
      method: 'get',
      data: data,
      header: header,
      success: function(res) { //返回取得的数据
        // console.log(res.data)
  
        if (res.data.code=="401") {
          wx.showToast({
            title: '请先登录',
            icon: 'none',
            duration: 2000,
            success: function () {
              wx.navigateTo({
                url: '/pages/login/login'
              })
            }
          })
          return false
        }
        resolve(res);
      },
      error: function(e) {
        reject('网络出错');
      },
      complete: function() {
        setTimeout(function() {
          wx.hideLoading()
        }, config.time)

      }
    })
  });
}

function postReq(url, data) {

  return new Promise((resolve, reject) => {
    header.token = getApp().globalData.token

    if (config.istoken) {
      if (!header.token) {
        wx.showToast({
          title: '请先登录',
          icon: 'none',
          duration: 2000,
          success: function() {
            wx.navigateTo({
              url: '/pages/login/login'
            })
          }
        })

        config.istoken = false;
        return false
      }
    }
    if (config.isload) {
      wx.showLoading({
        title: config.loadtext,
      })
      config.loadtext = '加载中'
    } else {
      config.isload = true
      config.loadtext = '加载中'
    }
    //网络请求
    wx.request({
      url: API_ROOT + url,
      method: 'post',
      data: data,
      header: header,
      success: function(res) { //返回取得的数据

        resolve(res);


      },
      error: function(e) {
        reject('网络出错');
      },
      complete: function() {
        setTimeout(function() {
          wx.hideLoading()
        }, config.time)
      }
    })
  });
}

function uploadFile(url, file, data) {

  return new Promise((resolve, reject) => {
    header.token = getApp().globalData.token
    if (config.istoken) {
      if (!header.token) {
        wx.showToast({
          title: '请先登录',
          icon: 'none',
          duration: 2000,
          success: function() {
            wx.navigateTo({
              url: '/pages/login/login'
            })
          }
        })

        config.istoken = false;
        return false
      }
    }
    if (config.isload) {
      wx.showLoading({
        title: config.loadtext,
      })
      config.loadtext = '加载中'
    } else {
      config.isload = true
      config.loadtext = '加载中'
    }
    //网络请求
    wx.uploadFile({
      url: API_ROOT + url,
      filePath: file,
      name: 'file',
      formData: data,
      success: function(res) {
        resolve(res);
      },
      error: function(e) {
        reject('网络出错');
      },
      complete: function() {
        setTimeout(function() {
          wx.hideLoading()
        }, config.time)
      }
    })
  });
}

module.exports = {
  getReq: getReq,
  postReq: postReq,
  uploadFile: uploadFile,
  header: header,
  API_ROOT: API_ROOT,
  imgurl: imgurl,
  config,
}